Web-based applications can be built to provide various functionalities that work together as system or project, such as content management systems, database management systems, configuration and provisioning management systems, and cloud provider management systems. It is often convenient and helpful for the various functionalities to have a similar look and feel for the user, as well as having similar usability, so that the user has a unified experience. However, building a web-based application can be a challenging task for a developer because a web-based application can include many components to implement these various functionalities. In addition, the different functionalities are often developed by different developers or different teams of developers. Even though the different functionalities may employ similar types of components, different developers may write code that implements these components in different fashions. As a result, the look and feel, and usability, for the user is often different from one functionality of the system or project to another.